1

centos7.3下 greenplum-db 安装、配置文档

一.系统要求

  • 1.系统版本要求:
    根据官方文档: greenplumd-b支持以下几种linux系统:
    SUSE Linux Enterprise Server 64-bit 12 SP2 or SP3, with kernel 4.4.73-5.1 or newer
    SUSE Linux Enterprise Server 64-bit 11 SP4

    CentOS 64-bit 6.x or 7.x

    Red Hat Enterprise Linux (RHEL) 64-bit 6.x or 7.x
  • 2.文件系统要求:
    数据存储目录为 xfs文件系统

二. centos7.3下安装greenplum-db

  • gp服务器列表

     144.131.252.198 mdw                master 主节点
     144.131.252.199 sdw1-1             数据节点1
     144.131.252.144 sdw2-1             数据节点2
     144.131.252.195 sdw3-1             主节点切换备用节点
  • 1.修改系统配置项

    1.1 关闭SELINUX
    vi /etc/selinux/config

    SELINUX=disabled

    1.2 关闭防火墙

    systemctl status firewalld
    systemctl stop firewalld.service
    systemctl disable firewalld.service
    iptable -L -n

    1.3
    修改内核配置参数,并执行 sysctl -p使之生效
    vi /etc/sysctl.conf

    kernel.shmmax = 500000000
    kernel.shmmni = 4096
    kernel.shmall = 4000000000
    kernel.sem = 2000 4096000 2000 2048
    kernel.sysrq = 1
    kernel.core_uses_pid = 1
    kernel.msgmnb = 65536
    kernel.msgmax = 65536
    kernel.msgmni = 2048
    net.ipv4.tcp_syncookies = 1
    net.ipv4.ip_forward = 0
    net.ipv4.conf.default.accept_source_route = 0
    net.ipv4.tcp_tw_recycle = 1
    net.ipv4.tcp_max_syn_backlog = 4096
    net.ipv4.conf.all.arp_filter = 1
    net.ipv4.ip_local_port_range = 1025 65535
    net.core.netdev_max_backlog = 10000
    net.core.rmem_max = 2097152
    net.core.wmem_max = 2097152
    vm.overcommit_memory = 2

    1.4
    vi /etc/security/limits.conf

    * soft nofile 65536
    * hard nofile 65536
    * soft nproc 131072
    * hard nproc 131072

    1.5
    配置集群中各节点hosts信息
    vi /etc/hosts

144.131.252.198    mdw        # master node
144.131.252.199    sdw1-1     # segment node 1
144.131.252.144    sdw2-1     # segment node 2
144.131.252.195    sdw3-1     # segment node 3

2 安装greenplum-db

2.1 从https://network.pivotal.io/pr...
greenplum-db-5.4.0-rhel7-x86_64.rpm
greenplum-cc-web-3.3.1-LINUX-x86_64.zip
拷贝至mdw(144.131.252.198)主节点/opt目录下
执行

tar -xzvf greenplum-cc-web-3.3.1-LINUX-x86_64.zip
rpm -ivh greenplum-db-5.4.0-rhel7-x86_64.rpm
unzip greenplum-db-5.4.0-rhel7-x86_64.zip
./greenplum-db-5.4.0-rhel7-x86_64.bin

2.2 按照提示输入安装目录

    /opt/greenplum-db

执行

    ./greenplum-cc-web-3.3.1-LINUX-x86_64.bin

按照提示输入安装目录

    /opt/greenplum-cc-web

解压完成后创建gpadmin用户和组,用来管理greenplum-db

    groupadd gpadmin                    # 创建分组
    useradd gpadmin -g gpadmin            # 创建用户并分配组
    passwd gpadmin                        # 为gpadmin分配密码
    cd /opt/greenplum-db
    chown -R gpadmin:gpadmin greenplum-db/
    chown -R gpadmin:gpadmin greenplum-cc-web/

2.3 切换到gpadmin用户下:

    su - gpadmin
    mkdir -p /opt/greenplum-db/gpconfigs
    cd /opt/greenplum-db/gpconfigs

创建配置文件

vim hostfile_exkeys    
    mdw
    sdw1-1
    sdw2-1
    sdw3-1
vi hostfile
    sdw1-1
    sdw2-1
    sdw3-1

2.4 在gpadmin用户下添加环境变量

vi ~/.bashrc
    #添加以下内容
    export LD_LIBRARY_PATH=$GPHOME/lib
    export MASTER_DATA_DIRECTORY=/home/gpadmin/gpdata/master/gpseg-1
    . /opt/greenplum-db/greenplum_path.sh
    . /opt/greenplum-cc-web/gpcc_path.sh
     source ~/.bashrc

切换到root用户下,导出环境变量

su - root
vi ~/.bashrc
    #添加以下内容
    export LD_LIBRARY_PATH=$GPHOME/lib
    export MASTER_DATA_DIRECTORY=/home/gpadmin/gpdata/master/gpseg-1
    . /opt/greenplum-db/greenplum_path.sh
    . /opt/greenplum-cc-web/gpcc_path.sh

执行

source ~/.bashrc
gpssh-exkeys -f hostfile_exkeys    #拷贝mster节点公钥至各segment节点             
gpseginstall -f /opt/greenplum-db/gpconfigs/hostfile_exkeys -p gpadmin 

注:

gpssh-exkeys -f hostfile_exkeys
将会在master节点生成公私钥,并拷贝至hostfile_exkeys各segment节点,实现后续无密钥登陆
gpseginstall -f /opt/greenplum-db/gpconfigs/hostfile_exkeys -p gpadmin
使用默认用户名(gpadmin) 、密码:gpadmin 在各segment节点安装Greenplum—Db

2.5 在master及各segment节点创建数据存储目录

mkdir /home/gpadmin/gpdata/master
cd /home/gpadmin/
chown -R gpadmin:gpadmin gpdata/master
gpssh -f /opt/greenplum-db/gpconfigs/hostfile -e "mkdir -p /home/gpadmin/gpdata/data1/primary;mkdir -p /home/gpadmin/gpdata/data2/primary”
gpssh -f /opt/greenplum-db/gpconfigs/hostfile -e "mkdir -p /home/gpadmin/gpdata/data1/mirror;mkdir -p /home/gpadmin/gpdata/data2/mirror"
gpssh -f /opt/greenplum-db/gpconfigs/hostfile -e "chown -R gpadmin:gpadmin /home/gpadmin/gpdata"
gpssh -f /opt/greenplum-db/gpconfigs/hostfile_exkeys -v -e 'ntpd'

切换到gpadmin用户下,初始化数据库集群

su - gpadmin
cd /opt/greenplum-db/
cp /opt/greenplum-db/docs/cli_help/gpconfigs/gpinitsystem_config /opt/greenplum-db/gpconfigs/gpinitsystem_config
vi /opt/greenplum-db/gpconfigs/gpinitsystem_config
###修改以下内容
MASTER_HOSTNAME=mdw
PORT_BASE=40000
declare -a DATA_DIRECTORY=(/home/gpadmin/gpdata/data1/primary /home/gpadmin/gpdata/data1/primary /home/gpadmin/gpdata/data2/primary /home/gpadmin/gpdata/data2/primary)
MASTER_DIRECTORY=/home/gpadmin/gpdata/master
MASTER_PORT=5432
MIRROR_PORT_BASE=50000
REPLICATION_PORT_BASE=41000
MIRROR_REPLICATION_PORT_BASE=51000
declare -a MIRROR_DATA_DIRECTORY=(/home/gpadmin/gpdata/data1/mirror /home/gpadmin/gpdata/data1/mirror /home/gpadmin/gpdata/data2/mirror /home/gpadmin/gpdata/data2/mirror)
DATABASE_NAME=gpdb
MACHINE_LIST_FILE=/opt/greenplum-db/gpconfigs/hostfile

2.6 配置修改完成之后,执行以下命令初始化数据库

    gpinitsystem -c gpconfigs/gpinitsystem_config -h         gpconfigs/hostfile

按照提示输入相应信息,初始化完成后修改master节点:

vi /home/gpadmin/gpdata/master/gpseg-/pg_hba.conf
    #添加以下内容(允许172.16网段通过密码登陆)
    host     all         gpadmin         172.16.1.1/16       md5

psql修改数据库密码:

    psql -d gpdb
    gpdb=# alter user gpadmin with password 'gpadmin'
    gpdb=# \q
    重启greenplumdb集群
gpstop -a
gpstart -a

2.7 启动greenplum-db commond center(gpcc)

    gpperfmon_install --enable --port 5432 --password gpadmin

重启greenplumdb集群,加载gpperfmon_install采集数据

gpstop -a
gpstart -a

启动web控制台界面

gpcmdr --setup

按照提示输入实例名、监听端口信息等

#Please enter the instance name
gpcc
#Press ENTER to use instance name
gpcc
#Is the master host for the Greenplum Database remote? Yy/Nn (default=N)
N
#What port does the Greenplum Database use? (default=5432)
5432
#Enable kerberos login for this instance? Yy/Nn (default=N)
N
#What port would you like the new web server to use for this instance? (default=28080)
28080

启动、停止

gpcmdr --start  #启动
gpcmdr --stop   #停止

cc_coder
5 声望1 粉丝